<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 原型继承
        //   子类的原型对象  =  父类的实例
        //    缺点：无法向父类传参 (可以在子类上重新定义这个属性，但是在原型上会出现多余的属性)


        function Dog (color) {
            this.color = color ;
            this.type = '狗子' ;
            this.say = '汪' ;
        }

        Dog.prototype.speak = function() {
            console.log('hello world');
        }


        function KeJi(name , age , color) {
            this.name = name ;
            this.age = age ;
            this.color = color ;

            // 想调用Dog的属性和方法
            // this.type = '狗子' ;
            // this.say = '汪' ;

        }

        KeJi.prototype = new Dog('white') ;


        const k = new KeJi('kj' , 3 , 'yellow') ;
        console.log(k);

        k.speak()

        console.log(k.color);




    </script>
    
</body>
</html>